package com.hfh.io;

import org.junit.Test;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;

public class OutputStreamDemo {
    @Test
    public void test2() {
        try (OutputStream os = new FileOutputStream("file\\a.txt")) {
            os.flush();
            
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
    @Test
    public void test1() {
        // 字节输出流, 可以写入中文到文本文件
        try (OutputStream os = new FileOutputStream("file\\a.txt")) {
            // 字节流只能写字节, 字节流能不能写中文?
            // utf-8的一个中文是3个字节, 在写的时候就把这3个字节都写入, 在文本里面会组合成一个中文
            byte[] bytes = "作为王朝硕果仅存的异姓王".getBytes();
//            byte[] bytes1 = new byte[1024];
//            for (int i = 0; i < bytes.length; i++) {
//                bytes1[i] = bytes[i];
//            }
            os.write(bytes, 0, bytes.length);
//            os.write(bytes1, 0, bytes.length);

        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    @Test
    public void test() throws IOException {
        //直接调用这个方法会把文档覆盖，如果想追加需要在name参数后面加一个true
        OutputStream os = new FileOutputStream("file\\a.txt",true);
        os.write(97);
        os.write(98);

    }
}
